package com.global.college.data.net;

import com.chad.library.adapter.base.entity.AbstractExpandableItem;
import com.chad.library.adapter.base.entity.MultiItemEntity;
import com.global.college.adapter.CourseExpandAdapter;

import java.util.List;

/**
 * 课程-视频列表
 * @author: xjh
 * @datetime: 2021/12/8
 */
public class CourseVideosBean extends AbstractExpandableItem implements MultiItemEntity {

    private List<CatalogModelListBean> catalogModelList;
    private String catalogName;
    private String catalogNo;
    private String classId;
    private String createTime;
    private String createUser;
    private String id;
    private String parentId;
    private Integer sort;
    private String updateTime;
    private String videoId;
    private List<CatalogModelListBean.VideoModelBean> videoModelList;

    @Override
    public int getLevel() {
        return 0;
    }

    @Override
    public int getItemType() {
        return CourseExpandAdapter.TYPE_COURSE_0;
    }

    public static class CatalogModelListBean extends AbstractExpandableItem implements MultiItemEntity{
        private List<?> catalogModelList;
        private String catalogName;
        private String catalogNo;
        private String classId;
        private String createTime;
        private String createUser;
        private String id;
        private String parentId;
        private Integer sort;
        private String updateTime;
        private String videoId;
        private List<VideoModelBean> videoModelList;

        @Override
        public int getLevel() {
            return 1;
        }

        @Override
        public int getItemType() {
            return CourseExpandAdapter.TYPE_COURSE_1;
        }

        public static class VideoModelBean extends AbstractExpandableItem implements MultiItemEntity {
            private String createTime;
            private String createUser;
            private String id;
            private String updateTime;
            private String videoCover;
            private double videoDuration;
            private String videoId;
            private String videoInstructor;
            private String videoKnowledgeTag;
            private String videoName;
            private String videoNote;
            private Integer videoState;
            private String videoSubjectTag;
            private String videoUrl;

            public String getCreateTime() {
                return createTime;
            }

            public void setCreateTime(String createTime) {
                this.createTime = createTime;
            }

            public String getCreateUser() {
                return createUser;
            }

            public void setCreateUser(String createUser) {
                this.createUser = createUser;
            }

            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
            }

            public String getUpdateTime() {
                return updateTime;
            }

            public void setUpdateTime(String updateTime) {
                this.updateTime = updateTime;
            }

            public String getVideoCover() {
                return videoCover;
            }

            public void setVideoCover(String videoCover) {
                this.videoCover = videoCover;
            }

            public double getVideoDuration() {
                return videoDuration;
            }

            public void setVideoDuration(double videoDuration) {
                this.videoDuration = videoDuration;
            }

            public String getVideoId() {
                return videoId;
            }

            public void setVideoId(String videoId) {
                this.videoId = videoId;
            }

            public String getVideoInstructor() {
                return videoInstructor;
            }

            public void setVideoInstructor(String videoInstructor) {
                this.videoInstructor = videoInstructor;
            }

            public String getVideoKnowledgeTag() {
                return videoKnowledgeTag;
            }

            public void setVideoKnowledgeTag(String videoKnowledgeTag) {
                this.videoKnowledgeTag = videoKnowledgeTag;
            }

            public String getVideoName() {
                return videoName;
            }

            public void setVideoName(String videoName) {
                this.videoName = videoName;
            }

            public String getVideoNote() {
                return videoNote;
            }

            public void setVideoNote(String videoNote) {
                this.videoNote = videoNote;
            }

            public Integer getVideoState() {
                return videoState;
            }

            public void setVideoState(Integer videoState) {
                this.videoState = videoState;
            }

            public String getVideoSubjectTag() {
                return videoSubjectTag;
            }

            public void setVideoSubjectTag(String videoSubjectTag) {
                this.videoSubjectTag = videoSubjectTag;
            }

            public String getVideoUrl() {
                return videoUrl;
            }

            public void setVideoUrl(String videoUrl) {
                this.videoUrl = videoUrl;
            }

            @Override
            public int getLevel() {
                return 2;
            }

            @Override
            public int getItemType() {
                return CourseExpandAdapter.TYPE_VIDEO;
            }
        }

        public List<?> getCatalogModelList() {
            return catalogModelList;
        }

        public void setCatalogModelList(List<?> catalogModelList) {
            this.catalogModelList = catalogModelList;
        }

        public String getCatalogName() {
            return catalogName;
        }

        public void setCatalogName(String catalogName) {
            this.catalogName = catalogName;
        }

        public String getCatalogNo() {
            return catalogNo;
        }

        public void setCatalogNo(String catalogNo) {
            this.catalogNo = catalogNo;
        }

        public String getClassId() {
            return classId;
        }

        public void setClassId(String classId) {
            this.classId = classId;
        }

        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
        }

        public String getCreateUser() {
            return createUser;
        }

        public void setCreateUser(String createUser) {
            this.createUser = createUser;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getParentId() {
            return parentId;
        }

        public void setParentId(String parentId) {
            this.parentId = parentId;
        }

        public Integer getSort() {
            return sort;
        }

        public void setSort(Integer sort) {
            this.sort = sort;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }

        public String getVideoId() {
            return videoId;
        }

        public void setVideoId(String videoId) {
            this.videoId = videoId;
        }

        public List<VideoModelBean> getVideoModelList() {
            return videoModelList;
        }

        public void setVideoModelList(List<VideoModelBean> videoModelList) {
            this.videoModelList = videoModelList;
        }
    }

    public List<CatalogModelListBean> getCatalogModelList() {
        return catalogModelList;
    }

    public void setCatalogModelList(List<CatalogModelListBean> catalogModelList) {
        this.catalogModelList = catalogModelList;
    }

    public String getCatalogName() {
        return catalogName;
    }

    public void setCatalogName(String catalogName) {
        this.catalogName = catalogName;
    }

    public String getCatalogNo() {
        return catalogNo;
    }

    public void setCatalogNo(String catalogNo) {
        this.catalogNo = catalogNo;
    }

    public String getClassId() {
        return classId;
    }

    public void setClassId(String classId) {
        this.classId = classId;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    public String getVideoId() {
        return videoId;
    }

    public void setVideoId(String videoId) {
        this.videoId = videoId;
    }

    public List<CatalogModelListBean.VideoModelBean> getVideoModelList() {
        return videoModelList;
    }

    public void setVideoModelList(List<CatalogModelListBean.VideoModelBean> videoModelList) {
        this.videoModelList = videoModelList;
    }
}
